home *** CD-ROM | disk | FTP | other *** search
/ Amiga Collections: Taifun / Taifun 101 (1989-08-15)(Ossowski, Stefan)(DE)(PD).zip / Taifun 101 (1989-08-15)(Ossowski, Stefan)(DE)(PD).adf / Binär / Bin.Mod < prev    next >
Text File  |  1989-04-20  |  2KB  |  61 lines

  1. (* Public Domain-Programm von Taifun 18.04.1989
  2.    Dieses Programm ist frei kopierbar, wenn dieser Text enthalten bleibt
  3.    und das Anleitungsfile unverändert ist. *)
  4.    
  5. MODULE Bin ;
  6.  
  7. FROM SYSTEM IMPORT ADR,BITSET ;
  8. FROM  InOut IMPORT WriteString,WriteLn,WriteCard,ReadCard ;
  9.  
  10. TYPE BitSetPtr = POINTER TO BITSET ;
  11.  
  12. VAR C,i,Zahl    : CARDINAL  ;
  13.     ZahlPtr     : BitSetPtr ;
  14.     
  15.     
  16. PROCEDURE RechneUm(bPtr : BitSetPtr) ;   
  17.    BEGIN (* RechneUm *)
  18.           FOR i := 15 TO 0 BY -1 DO
  19.             IF (i IN bPtr^) THEN 
  20.             WriteString("1") ;
  21.             ELSE 
  22.             WriteString("0") ;
  23.             END (* IF *) ;
  24.           END (* FOR *);  
  25.    END RechneUm ;
  26.  
  27. PROCEDURE Zeile ;
  28.   BEGIN (* Zeilenvorschub *)
  29.         FOR C:= 0 TO 4 DO
  30.          WriteLn;
  31.         END (* FOR *);
  32.   END Zeile;
  33.         
  34.   
  35. BEGIN (* --- Hauptprogramm --- *)
  36.  
  37.    Zeile; Zeile; Zeile; Zeile; Zeile; Zeile;
  38.    REPEAT
  39.    WriteString("           Public Domain-Modula-2-Programm von Taifun"); 
  40.    WriteLn ;
  41.    WriteString("                       Abbruch mit RETURN");
  42.    WriteLn;
  43.    WriteString("           Programm rechnet Dezimalzahlen in Binärzahlen um.");
  44.    WriteLn; WriteLn; WriteLn; WriteLn; 
  45.    WriteString("           Bitte machen Sie Ihre Eingabe --> ");
  46.    ReadCard(Zahl);
  47.    WriteLn; WriteLn;
  48.       ZahlPtr := ADR(Zahl) ;
  49.       WriteString("  Dezimalzahl = ");
  50.       WriteCard(Zahl,1) ; WriteString("      ") ; 
  51.       WriteString("Zahl ist Binär --> ");
  52.       RechneUm(ZahlPtr) ;
  53.       Zeile;
  54.    UNTIL (Zahl = 0) ;
  55.  
  56.    WriteString("           Bis bald...........                   ......T A I F U N");
  57.    Zeile;   
  58.    
  59. END Bin .
  60.  
  61.